﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using BE;
using BL;
using System.Data;
using CrystalDecisions.Shared;

using System.IO;
using System.Data;
using System.Drawing;
using System.Data.SqlClient;
using System.Configuration;

using System.Text;
using System.Web.UI.HtmlControls;

namespace UI.Encuestas
{
    public partial class frmEncuestaConsulta : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void buscarxDni() 
        {
            try
            {
                string dni = txtDni.Text.Trim();

                if (txtDni.Text.Trim().Length == 0)
                {
                    dni = "";
                }
                else
                {
                    dni = txtDni.Text.Trim();
                }

                Encuesta_BL obj = new Encuesta_BL();
                DataTable dato = new DataTable();
                dato = obj.encuesta_ListaxDni(dni);
                grvEncuestas.DataSource = dato;
                grvEncuestas.DataBind();


                CuentaItemsGrilla(dato);
            }
            catch (Exception ex)
            {
                LabelError.Text = ex.Message.ToString();
            }            
        }


        protected void buscarxDni2()
        {
            try
            {
                string dni = txtDni.Text.Trim();

                if (txtDni.Text.Trim().Length == 0)
                {
                    dni = "";
                }
                else
                {
                    dni = txtDni.Text.Trim();
                }

                Encuesta_BL obj = new Encuesta_BL();
                DataTable dato = new DataTable();
                dato = obj.encuesta_ListaxDni(dni);
                grvEncuestas1.DataSource = dato;
                grvEncuestas1.DataBind();
               
               
            }
            catch (Exception ex)
            {
                LabelError.Text = ex.Message.ToString();
            }
        }

        protected void btnBuscar_Click(object sender, EventArgs e)
        {
            buscarxDni();
            buscarxDni2();
        }

        public void CuentaItemsGrilla(DataTable dato)
        {
            if (dato.Rows.Count == 0)
            {
                grvEncuestas.Caption = "No se encontró coincidencias";
                lblMensaje.Text = "No se encontró coincidencias";
            }
            else if (dato.Rows.Count == 1)
            {
                grvEncuestas.Caption = "Total de items - 1 registro encontrado";
                lblMensaje.Text = "";
            }
            else
            {
                grvEncuestas.Caption = "Total de items - " + dato.Rows.Count + " registros encontrados";
                lblMensaje.Text = "";
            }
        }

        protected void grvEncuestas_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            //GridView gv = (GridView)sender;
            //gv.PageIndex = e.NewPageIndex;
            //grvEncuestas.PageIndex = e.NewPageIndex;

            //buscarxDni(); 
        }

        protected void btnExportar_Click(object sender, ImageClickEventArgs e)
        {
            //ExportToExcel(null, null);
        }

        //protected void ExportToExcel(object sender, EventArgs e)
        //{
        //    Response.Clear();
        //    Response.Buffer = true;
        //    Response.AddHeader("content-disposition", "attachment;filename=GridViewExport.xls");
        //    Response.Charset = "";
        //    Response.ContentType = "application/vnd.ms-excel";
        //    using (StringWriter sw = new StringWriter())
        //    {
        //        HtmlTextWriter hw = new HtmlTextWriter(sw);

        //        //To Export all pages
        //        grvEncuestas.AllowPaging = false;

        //        //this.BindGrid();
        //        buscarxDni();

        //        grvEncuestas.HeaderRow.BackColor = Color.White;
        //        foreach (TableCell cell in grvEncuestas.HeaderRow.Cells)
        //        {
        //            cell.BackColor = grvEncuestas.HeaderStyle.BackColor;
        //        }
        //        foreach (GridViewRow row in grvEncuestas.Rows)
        //        {
        //            row.BackColor = Color.White;
        //            foreach (TableCell cell in row.Cells)
        //            {
        //                if (row.RowIndex % 2 == 0)
        //                {
        //                    cell.BackColor = grvEncuestas.AlternatingRowStyle.BackColor;
        //                }
        //                else
        //                {
        //                    cell.BackColor = grvEncuestas.RowStyle.BackColor;
        //                }
        //                cell.CssClass = "textmode";
        //            }
        //        }

        //        grvEncuestas.RenderControl(hw);

        //        //style to format numbers to string
        //        string style = @"<style> .textmode { } </style>";
        //        Response.Write(style);
        //        Response.Output.Write(sw.ToString());
        //        Response.Flush();
        //        Response.End();
        //    }
        //}


        protected void btnExporta_Click(object sender, ImageClickEventArgs e)
        {
            StringBuilder sb = new StringBuilder();
            StringWriter sw = new StringWriter(sb);
            HtmlTextWriter htw = new HtmlTextWriter(sw);

            Page page = new Page();
            HtmlForm form = new HtmlForm();

            grvEncuestas1.EnableViewState = false;

            // Deshabilitar la validación de eventos, sólo asp.net 2
            page.EnableEventValidation = false;

            // Realiza las inicializaciones de la instancia de la clase Page que requieran los diseñadores RAD.
            page.DesignerInitialize();

            page.Controls.Add(form);
            form.Controls.Add(grvEncuestas1);
            grvEncuestas1.AllowPaging = false;
            buscarxDni2();
            page.RenderControl(htw);

            Response.Clear();
            Response.Buffer = true;
            Response.ContentType = "application/vnd.ms-excel";
            Response.AddHeader("Content-Disposition", "attachment;filename=Egresados.xls");
            Response.Charset = "UTF-8";
            Response.ContentEncoding = Encoding.Default;
            Response.Write(sb.ToString());
            Response.End();
            grvEncuestas1.AllowPaging = true;
            buscarxDni2(); 
        }

        protected void grvEncuestas_SelectedIndexChanged(object sender, EventArgs e)
        {
            Session["promocion"] = HttpUtility.HtmlDecode(grvEncuestas.SelectedRow.Cells[2].Text);
            Session["apaterno"] = HttpUtility.HtmlDecode(grvEncuestas.SelectedRow.Cells[3].Text);
            Session["dni"] = HttpUtility.HtmlDecode(grvEncuestas.SelectedRow.Cells[9].Text);

            string script = "AbrirVentana('fmrEncuestaConsultaPdf.aspx')";
            ScriptManager.RegisterStartupScript(this, typeof(Page), "popup", script, true);           
        }
    }
}